ЧИСЛОВЕ ОБЧИСЛЕННЯ ВИЗНАЧЕНИХ ІНТЕГРАЛІВ

Інформація про навчальний заклад

ВУЗ:
Національний університет Львівська політехніка
Інститут:
Не вказано
Факультет:
ЗІ
Кафедра:
Не вказано

Інформація про роботу

Рік:
2014
Тип роботи:
Звіт до лабораторної роботи
Предмет:
Комп’ютерні методи дослідження систем керування
Група:
СІ-21

Частина тексту файла

Міністерство освіти та науки України Національний університет “Львівська політехніка” Звіт до лабораторної роботи № 5 з курсу “Комп’ютерні методи дослідження систем керування” ЧИСЛОВЕ ОБЧИСЛЕННЯ ВИЗНАЧЕНИХ ІНТЕГРАЛІВ Варіант #7 Львів 2014 Мета роботи: вивчити основні методи обчислення визначених інтегралів. Теоретичні відомості: Метод Сімпсона Метод вимагає розбиття проміжку  на парну кількість ділянок  з кроком . На кожній ділянці , , … ,  підінтегральну функцію  замінюємо параболою другого порядку . (4.1) де  Для цього випадку (рис. 5), коефіцієнти , ,  обчислюються з накладеної умови, що парабола проходить через крапки функції  у цих вузлах інтерполяції. Тобто, можемо записати систему трьох лінійних алгебричних рівнянь, з яких і обчислюються необхідні нам коефіцієнти . (4.2) Розв’язавши систему (4.2), отримаємо значення коефіцієнтів . (4.3) Підставивши отримані значення коефіцієнтів у рівняння параболи (4.1), отримаємо таке співвідношення . (4.4) При підставленні замість підінтегральної функцій  виразу (4.4), отримаємо значення визначеного інтегралу на проміжку  . (4.5) Узагальнюючи формулу (4.5) для усіх ділянок , , … , , отримаємо такий вираз . (4.6) Просумуємо значення інтегралу на усіх зазначених ділянках  (4.7) Записавши значення функцій з коефіцієнтами 2 та 4 у вигляді двох сум, отримаємо загальну формулу методу Сімпсона (парабол) . (4.8) Завдання: Метод Сімпсона Кількість розбиттів проміжку інтегрування m=10   Код програми: //Метод Сімпсона #include <iostream> #include <math.h> using namespace std; double Integral = 0, pi = 3.1415926; double a = 0, b, h, n, m = 10; double fa, fb, x = 0; void main() { setlocale(0, ""); b = pi/2; n = 2*m; h = (b - a)/n; fa = sin(a) * pow(cos(a), 2); fb = sin(b) * pow(cos(b), 2); for (int i = 1; i < m; i++) { x = a + (2 * i - 1)*h; Integral += (4 * sin(x)*pow(cos(x), 2)); } for (int i = 1; i < m - 1; i++) { x = a + 2 * i * h; Integral += 2 * sin(x)*pow(cos(x), 2); } Integral = (h / 3) * (fa + fb + Integral); cout << "\n\tЗначення iнтегралу: " << Integral << endl; // Перевірка cout << "\n\tТочно обчислений визначений iнтеграл \n\tзгiдно формули Ньютона-Лейбнiца: " << (-1./3. * pow(cos(b), 3)) - (-1./3. * pow(cos(a), 3)); _fgetchar(); } Результат роботи ппрограми: /
Антиботан аватар за замовчуванням

12.04.2016 16:04

Коментарі

Ви не можете залишити коментар. Для цього, будь ласка, увійдіть або зареєструйтесь.

Завантаження файлу

Якщо Ви маєте на своєму комп'ютері файли, пов'язані з навчанням( розрахункові, лабораторні, практичні, контрольні роботи та інше...), і Вам не шкода ними поділитись - то скористайтесь формою для завантаження файлу, попередньо заархівувавши все в архів .rar або .zip розміром до 100мб, і до нього невдовзі отримають доступ студенти всієї України! Ви отримаєте грошову винагороду в кінці місяця, якщо станете одним з трьох переможців!
Стань активним учасником руху antibotan!
Поділись актуальною інформацією,
і отримай привілеї у користуванні архівом! Детальніше

Оголошення від адміністратора

Антиботан аватар за замовчуванням

пропонує роботу

Admin

26.02.2019 12:38

Привіт усім учасникам нашого порталу! Хороші новини - з‘явилась можливість кожному заробити на своїх знаннях та вміннях. Тепер Ви можете продавати свої роботи на сайті заробляючи кошти, рейтинг і довіру користувачів. Потрібно завантажити роботу, вказати ціну і додати один інформативний скріншот з деякими частинами виконаних завдань. Навіть одна якісна і всім необхідна робота може продатися сотні разів. «Головою заробляти» продуктивніше ніж руками! :-)

Новини